package com.atguigu.java;

import org.junit.Test;

import java.util.List;

/**
 * @Description
 * @Author codingBee
 * @Date 2020/6/19/22:15
 */
public class GenericTest {
    @Test
    public  void test1() {
        //如果定义了泛型类，实例化没有指明类的泛型的类型，则认为此泛型类型为Object类型
        //要求：如果定义了某个类是带泛型的，建议在实例化时要指定泛型的类型。
        Order order = new Order();
        order.setOrderT(123);
        order.setOrderT("abc");
        Order<String> order1 = new Order<String >("orderName",22,"orderDetail");
        SubOrder<Integer> subOrder =new SubOrder<Integer>();
        subOrder.setOrderT(22);
    }

    @Test
    public  void test2() {
        SubOrder<Integer> subOrder =new SubOrder<Integer>();
        subOrder.setOrderT(22);
    }
    @Test
    public  void test3() {
       Order<String> order = new Order<>();
       Integer [] arr = new Integer[]{1,2,3,4};
       //泛型方法在调用时，指定泛型参数的类型。
        List<Integer> integers = order.copyFromArrayToList(arr);
        for (Integer integer : integers) {
            System.out.println(integer);
        }
    }
}
